With the growth of computer networks, it is now possible for computers to make large numbers of information transfer requests to many other computer systems. A common information transfer request (“ITR”) provides for receiving all or portions of files from another computer. For example, the Hypertext Transfer Protocol (“HTTP”), an application-level protocol for distributed, collaborative, hypermedia information systems, has been in use since 1990 and includes methods for requesting and transferring information. An early version of HTTP, the 0.9 version, provided a protocol for raw data transfer across the Internet. Subsequently, HTTP versions 1.0 and 1.1 have appeared.
When a computer sends an ITR to another computer, the ITR may traverse data communication systems that may include one or more servers and one or more proxy servers. Not all of the servers or proxy servers may support the same data communications protocol, however. For example, some servers may support HTTP 1.1 while others may support HTTP 1.0. Generally, newer versions of protocols are backwards compatible with older versions of protocols and thus can successfully process ITRs formatted in the older versions. A problem arises, however, when an ITR formatted in a newer protocol arrives at a server supporting an older protocol. The effects on the ITR formatted in the newer protocol when processed by the server supporting the older protocol may be unpredictable and unwanted. For example, HTTP 1.1 supports a byte range specification in an ITR and thus a portion of a file, specified by the byte range, may be requested, however HTTP 1.0 does not support a byte range specification. Thus, when an HTTP 1.1 ITR with a byte range specification is processed by a server supporting HTTP 1.0, the HTTP 1.0 server may discard the byte range specification or may even discard the entire ITR. Thus, there exists a need for a system that can recognize when an ITR has not successfully traversed data communications systems and for reformatting the ITR in order that the ITR may successfully traverse the data communications systems and generate a desired response.